<?php
    session_start();
    unset($_SESSION['user_id']);

    $errorText = '';
    // 基于点击链接，和直接输入地址的请求方式是get提交，下面要做判断，当只有post请求时才执行代码
    if(!empty($_POST)){

        // 导入封装的操作数据库函数
        include '../fn.php';


        // echo '<pre>';
        // print_r($_POST);
        // echo '</pre>';

        // 1.获取前端传递的邮箱和密码
        $email = $_POST['email'];
        $password = $_POST['password'];
        if (empty($email)|| empty($password)) {

            $errorText = '邮箱或密码为空!';

        }else {

            // 2.先查询邮箱是否已经注册
            // 构建查询串
            $sql = "select * from users where email='$email'";
            $result = my_query($sql);
            // echo '<pre>';
            // print_r($result);
            // echo '</pre>';  

            if(!empty($result['state']) && $result['state']==10){

                // 服务器链接失败
                $errorText = '服务器链接失败';

            }else if(!empty($result['state']) && $result['state']==100){

                //  ·未注册，报错邮箱不存在，邮箱，密码都清空(跳转页面自动清空)
                $errorText = '邮箱未注册';

            }else {
                //  ·注册了，再比较密码是否正确
                $info = $result[0];
                // echo '<pre>';
                // print_r($info);
                // echo '</pre>';
                if ($info['password'] == $password) {
                    // echo '密码正确';

                    // 在用户登录成功时，给用户添加标记以保持用户登录状态
                    // session_start()做了三件事----当cookie中有PHPSESSID时就不做这3件事情
                    // ·创建随机的sessionid
                    // ·创建一个同名sessionid用于存储数据(一个浏览器对应一个？)
                    // ·把sessionid发送给浏览器cookie
                    
                    // 向sessionid同名文件中添加数据(用于判断,最好是数据库里的id唯一标识，不会重复)
                    $_SESSION['user_id'] = $info['id'];
                    //  ·进行跳转去首页
                    header('location: ./index1.php');

                }else {
                    //  ·错误，报错密码错误,密码清空(填充邮箱)
                    $errorText = '密码错误';
                }
            }

        }

    }
?>


<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="utf-8">
    <title>Sign in &laquo; Admin</title>
    <link rel="stylesheet" href="../assets/vendors/bootstrap/css/bootstrap.css">
    <link rel="stylesheet" href="../assets/css/admin.css">
</head>

<body>
    <div class="login">
        <!-- action属性如果为空，默认提交给当前页面 -->
        <form class="login-wrap" action="" method="post">
            <img class="avatar" src="../assets/img/default.png">

            <!-- 有错误信息时展示 -->
            <!-- 如果$errorText不为空，说明有错，下面的盒子要出现...循环也是这叼结构 -->
            <?php if (!empty($errorText)) { ?>
            <div class="alert alert-danger">
                <strong>错误！</strong> <?php echo $errorText; ?>
            </div>
            <?php } ?>

            <div class="form-group">
                <label for="email" class="sr-only">邮箱</label>
                <input id="email" type="email" class="form-control" placeholder="邮箱" autofocus name="email" value="<?php echo $errorText == '密码错误'||$errorText == '邮箱未注册' ? $email : ''; ?>">
            </div>
            <div class="form-group">
                <label for="password" class="sr-only">密码</label>
                <input id="password" type="password" class="form-control" placeholder="密码" name="password">
            </div>
            <input class="btn btn-primary btn-block" type="submit" value="登录">
        </form>
    </div>
</body>

</html>